package com.gzc.just.play.last.war.common.annotation;

import java.lang.annotation.ElementType;
import java.lang.annotation.Retention;
import java.lang.annotation.RetentionPolicy;
import java.lang.annotation.Target;

/**
 * 消息处理器注解
 * 用于标记实现了SimpleMessageHandler接口的类，使其能够被自动扫描和注册
 */
@Target(ElementType.TYPE)
@Retention(RetentionPolicy.RUNTIME)
public @interface MessageHandler {
    /**
     * 处理器名称，可选
     */
    String name() default "";
    
    /**
     * 适用的服务器类型，可选
     */
    ServerType[] serverTypes() default {};
    
    /**
     * 服务器类型枚举
     */
    enum ServerType {
        GATE_SERVER,
        LOGIN_SERVER,
        BALANCE_SERVER,
        CENTRAL_SERVER,
        SCENE_SERVER,
        ROBOT_CLIENT
    }
}